<!DOCTYPE html>
<html>
    <head>
		<title>演示12.1异常捕获</title>
        <script>
        var txt = "";
        function message(){
            try{
				// try会尝试捕获代码块中的错误.
				// 若某一行代码执行出错.则把错误提交到catch代码块.并中断当前代码块的执行
				alert("开始捕获")
                adddlert("Welcome guest!");
				adddlert("Welcome guest2!");
				alert("结束捕获。未发现错误")
            }
            catch(err)
            {
				// catch代码块会捕获到try代码块抛出的异常对象
				// err.message 异常对象的message属性是异常的描述文字
				
                txt="本页有一个错误。\n\n";
                txt+="错误描述：" + err.message + "\n\n";
                txt+="点击确定继续。\n\n";
                alert(txt);
				// catch内部若发生异常仍然会抛出到浏览器中
				alewrwerer(tx);
            }
        }
		
		// 演示throw语句主动抛出异常
		function myFunction()
		{
			try
			{
				var x = document.getElementById("demo").value;
				if(x == "")    throw "你输入的是个啥。明明没有输入！";
				if(isNaN(x)) throw "你数学老师是语文老师教的吗？";
				if(x > 10)     throw "你输入的数字有点太高了";
				if(x < 5)      throw "你输入的数字有点太喽了";
			}
			catch(err){
				var y = document.getElementById("mess");
				y.innerHTML = "错误信息: " + err + ".";
			}
		}
        </script>
    </head>

    <body>
        <input type="button" value="查看消息" onclick="message()" />
		
		<h1>我的第N个JavaScript代码</h1>
		<p>请输入 5 到 10之间的数字:</p>
		<input id="demo" type="text">
		<button type="button" onclick="myFunction()">验证输入</button>
		<p id="mess"></p>
    </body>

</html>